package com.malou.server.ventas.serie;

import java.util.List;

import com.extjs.gxt.ui.client.data.FilterPagingLoadConfig;
import com.extjs.gxt.ui.client.data.PagingLoadResult;
import com.google.gwt.user.server.rpc.RemoteServiceServlet;
import com.malou.client.util.MensajeData;
import com.malou.client.ventas.serie.Serie;
import com.malou.client.ventas.serie.SerieService;
import com.malou.client.ventas.serie.TipoDocumento;
import com.malou.server.base.util.GxtGridPaginate;

public class SerieServiceImpl extends RemoteServiceServlet implements SerieService {

	private static final long serialVersionUID = 1L;

	@Override
	public PagingLoadResult<Serie> paginateSerie(FilterPagingLoadConfig config) {
		
		GxtGridPaginate paginate = new GxtGridPaginate();
		paginate.config = config;
		
		return Series.getPaginate(paginate);
	}

	@Override
	public MensajeData save(Serie serie) {
		MensajeData data = new MensajeData();
		data.guardado = true;
		
		if(!Series.save(serie)){
			data.guardado = false;
			data.errorTipo = Series.errorTipo;
		}
		
		return data;
	}

	@Override
	public MensajeData delete(Integer id) {
		MensajeData data = new MensajeData();
		data.guardado = true;
		
		if(!Series.delete(id)){
			data.guardado = false;
		}
		
		return data;
	}

	@Override
	public MensajeData deleteAll(String ids) {
		MensajeData data = new MensajeData();
		data.guardado = true;
		
		if(!Series.deleteAll(ids)){
			data.guardado = false;
		}
		
		return data;
	}

	@Override
	public List<TipoDocumento> getTipoDocumento() {
		return Series.getTipoDocumento();
	}

}